#ifndef __FLYMAP_VSYNC_H__
#define __FLYMAP_VSYNC_H__

#ifdef __cplusplus
extern "C"{
#endif /* __cplusplus */


#define    FLYMAP_IOCTL_BASE    'W'

struct flymap_ioctl 
{
    int expose;
    int fps;
    int active;
};

struct flymap_trigger_info
{
    unsigned long long trigger_timestamp;
    unsigned long long frame_timestamp;
    unsigned long long exp_timestamp;
    unsigned long long frame_no;
    unsigned long long v_active_timestamp;
    unsigned long long v_total_timestamp;
};

#define DEVICE_NAME        "flymap_vsync"

#define FLYMAP_TRIGGER_IO_EVENT     _IOWR(FLYMAP_IOCTL_BASE, 0, struct flymap_trigger_info)
#define FLYMAP_GET_TRIGGER_INFO     _IOR(FLYMAP_IOCTL_BASE, 1, struct flymap_trigger_info)

#define FLYMAP_RTK_TRIGGER_GPIO 40						// gpio5_0
#define FLYMAP_RTK_TRIGGER_GPIO_LABER "rtk_trigger_gpio"

#define RTK_TRIGGER_ON  1
#define RTK_TRIGGER_OFF 0



#ifdef __cplusplus
}
#endif /* __cplusplus */

#endif /* __FLYMAP_VSYNC_H__ */
